class_name BaseView
extends Control

#region 属性
@export var view_type:GameEnum.ViewType = GameEnum.ViewType.MainMenuView
@export var view_desc:String
@export var view_open_mode:GameEnum.OpenMode = GameEnum.OpenMode.ExcludeAll
@export var view_reopen_mode:GameEnum.ReopenMode = GameEnum.ReopenMode.Forbidden
@export var view_audio_mode:GameEnum.AudioMode = GameEnum.AudioMode.All
@export var view_priority:int
var _cur_view_state:GameEnum.ViewState = GameEnum.ViewState.Exit
#endregion
#region 字段
#endregion
#region 信号
#endregion

#region 基类方法
func init_view():
	pass
func on_enter(args:Dictionary = {}):
	if _cur_view_state == GameEnum.ViewState.Enter:
		return
	_cur_view_state = GameEnum.ViewState.Enter
	visible = true
func on_pause(args:Dictionary = {}):
	if _cur_view_state == GameEnum.ViewState.Pause:
		return
	_cur_view_state = GameEnum.ViewState.Pause
	visible = false
func on_resume(args:Dictionary = {}):
	if _cur_view_state == GameEnum.ViewState.Resume:
		return
	_cur_view_state = GameEnum.ViewState.Resume
	visible = true
func on_exit(args:Dictionary = {}):
	if _cur_view_state == GameEnum.ViewState.Exit:
		return
	_cur_view_state = GameEnum.ViewState.Exit
	visible = false
func get_view_state() -> GameEnum.ViewState:
	return _cur_view_state
#endregion
#region 公共方法
#endregion
#region 私有方法
#endregion
#region 生命周期函数
#endregion
